<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="../js/vue.js"></script>
    <title>计算属性</title>
</head>
<!-- 
    简写形式
              fullName() { return this.name + "-" + this.ming}
              
            1.前提：对于计算属性，只读，不做修改

    
            

    注意：
            1.计算属性虽然是一个方法，但是本质是Vm.fullName=fullName(),把fullName()返回出来的值挂载到Vm上，但是Vm._data找不到计算属性
 -->


<body>
    <div id="root">
        姓：<input type="text" v-model="name"><br>
        名：<input type="text" v-model="ming"><br>
        全名：{{fullName}}<br>
        全名：{{fullName}}<br>
        全名：{{fullName}}<br>
        全名：{{fullName}}<br>


    </div>
    <script>
        Vue.config.productionTip = false; //以阻止vue在启动时生成生产提示
        const Vm = new Vue({
            el: "#root",
            data: {
                name: "张",
                ming: "名师"
            },
            computed: {
                // 完整写法
                // fullName: {
                // get() {
                //     return this.name + "-" + this.ming
                // },

                // set(value) {
                //     let arr = value.split('-')
                //     this.name = arr[0]
                //     this.ming = arr[1]
                // }
                // }


                // 简写
                // fullName: function () {
                //     return this.name + "-" + this.ming
                // }


                // 再精简
                fullName() {
                    return this.name + "-" + this.ming
                }


            }
        })
    </script>
</body>

</html>